The present invention relates generally to the field of interface devices and to their configuration and programming. More particularly, the present invention relates to connection, function and interoperation of objects for interfaces of industrial automation devices.
A wide range of interface devices are known and are presently in use in many different fields. In industrial automation, for example, human machine interfaces or “HMIs” are commonly employed for monitoring or controlling various processes. The HMIs may read from or write to specific registers such that they can reflect the operating state of various machines, sensors, processes, and so forth. The interfaces can also write to registers and memories such that they can, to some extent, control the functions of the process. In monitoring functions alone, little or no actual control is executed. In many other settings similar devices are employed, such as in automobiles, aircraft, commercial settings, and a host of other applications. In many applications, the interface may not communicate with a remote device or process, but may be operated in a stand-alone manner.
In these interface devices, various objects used in the interface may correlate to different controls, monitors, or any other parameter of an industrial automation device. Some of these objects may have visual representations on the interface devices, while other objects may not be visually represented but may be accessible for configuration and programming by a user. A user may desire to manipulate these objects, such as by creating new objects, to create and customize an interface. A user may also create connections between objects, for example, to connect the output of one object to the input of another object. Each object may have numerous connections to any number of other objects.
Conventional control systems and devices may include various types of interfaces, such as discrete, analog, text, and so on. Using objects to design and configure these interfaces may necessitate configuring a type or an object, or a specific type for the output and input. For example, a object dealing with discrete logic types must be connected to another discrete logic object, so that the outputs and inputs of the two objects are compatible. Similarly, devices or objects dealing with an unsigned 16-bit value will not be able to receive a text string as input without additional processing and overhead to handle the conversion from string to unsigned 16-bit. Additionally, the conversion is generally hard-coded and is not adaptable to input types received from other objects or connections. Other systems may force the type of data input to or output from an object. For example, the device or interface may operate on a limited selection of types, and may reject any other connection type. In such systems, a user or designer of an interface must manually convert the data to the acceptable forms, adding design complexity and processing overhead. Such a system also presents maintenance problems, as new object or connection types require the user or designer to manually change the objects or connections to the acceptable types of the present system.